/**
 * 
 */
package com.efast.dmom.mes.dao.entity;

import java.util.List;

import org.apache.ibatis.annotations.Param;

import com.efast.dmom.mes.dao.base.RouteRelateBaseEntityDao;
import com.efast.dmom.mes.entity.RouteStepEntity;

/**
 * @author Aaron Liu
 *
 *         2020年2月13日
 */
public interface RouteStepDao extends RouteRelateBaseEntityDao<RouteStepEntity>{

	public void saveRouteSteps(List<RouteStepEntity> entityList);

	public void removeRouteStepsById(List<RouteStepEntity> entityList);

	public void updateRouteSteps(List<RouteStepEntity> entityList);

	public void removeStepsByRouteId(long routeId);
	
	public long getStepKeyByUUID(String uuid);
	
	public RouteStepEntity getStepByUUID(String uuid);
	
	public RouteStepEntity getRouteStepByKey(long stepKey);

	public List<RouteStepEntity> getRouteStepsByRouteId(long routeId);
	
	public List<RouteStepEntity> getNextRouteSteps(List<Long> list);

	public int getRoueStepByOperationId(long operationId);

	public RouteStepEntity getRouteStepByName(@Param(value = "routeKey") long routeKey,
			@Param(value = "stepName") String stepName);
}
